
export const GetIndFields = (): Record<string, Record<string, any>[]> => ({
  AO: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 5 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 34 }
  ],
  BIAS: [
    { paramNameKey: 'BIAS1', precision: 0, min: 1, styleKey: 'lines[0].color' },
    { paramNameKey: 'BIAS2', precision: 0, min: 1, styleKey: 'lines[1].color' },
    { paramNameKey: 'BIAS3', precision: 0, min: 1, styleKey: 'lines[2].color' },
    { paramNameKey: 'BIAS4', precision: 0, min: 1, styleKey: 'lines[3].color' },
    { paramNameKey: 'BIAS5', precision: 0, min: 1, styleKey: 'lines[4].color' }
  ],
  BOLL: [
    { paramNameKey: 'period', precision: 0, min: 1, default: 20 },
    { paramNameKey: 'standard_deviation', precision: 2, min: 1, default: 2 }
  ],
  BRAR: [
    { paramNameKey: 'period', precision: 0, min: 1, default: 26 }
  ],
  BBI: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 3 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 6 },
    { paramNameKey: 'params_3', precision: 0, min: 1, default: 12 },
    { paramNameKey: 'params_4', precision: 0, min: 1, default: 24 }
  ],
  CCI: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 20 }
  ],
  CR: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 26 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 10 },
    { paramNameKey: 'params_3', precision: 0, min: 1, default: 20 },
    { paramNameKey: 'params_4', precision: 0, min: 1, default: 40 },
    { paramNameKey: 'params_5', precision: 0, min: 1, default: 60 }
  ],
  DMA: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 10 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 50 },
    { paramNameKey: 'params_3', precision: 0, min: 1, default: 10 }
  ],
  DMI: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 14 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 6 }
  ],
  EMV: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 14 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 9 }
  ],
  EMA: [
    { paramNameKey: 'EMA1', precision: 0, min: 1, styleKey: 'lines[0].color' },
    { paramNameKey: 'EMA2', precision: 0, min: 1, styleKey: 'lines[1].color' },
    { paramNameKey: 'EMA3', precision: 0, min: 1, styleKey: 'lines[2].color' },
  ],
  MTM: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 12 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 6 }
  ],
  MA: [
    { paramNameKey: 'MA1', precision: 0, min: 1, styleKey: 'lines[0].color' },
    { paramNameKey: 'MA2', precision: 0, min: 1, styleKey: 'lines[1].color' },
    { paramNameKey: 'MA3', precision: 0, min: 1, styleKey: 'lines[2].color' },
  ],
  MACD: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 12 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 26 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 9 }
  ],
  OBV: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 30 }
  ],
  PVT: [],
  PSY: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 12 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 6 }
  ],
  ROC: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 12 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 6 }
  ],
  RSI: [
    { paramNameKey: 'RSI1', precision: 0, min: 1, styleKey: 'lines[0].color' },
    { paramNameKey: 'RSI2', precision: 0, min: 1, styleKey: 'lines[1].color' },
    { paramNameKey: 'RSI3', precision: 0, min: 1, styleKey: 'lines[2].color' },
    { paramNameKey: 'RSI4', precision: 0, min: 1, styleKey: 'lines[3].color' },
    { paramNameKey: 'RSI5', precision: 0, min: 1, styleKey: 'lines[4].color' }
  ],
  SMA: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 12 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 2 }
  ],
  KDJ: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 9 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 3 },
    { paramNameKey: 'params_3', precision: 0, min: 1, default: 3 }
  ],
  SAR: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 2 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 2 },
    { paramNameKey: 'params_3', precision: 0, min: 1, default: 20 }
  ],
  TRIX: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 12 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 9 }
  ],
  VOL: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 5 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 10 },
    { paramNameKey: 'params_3', precision: 0, min: 1, default: 20 }
  ],
  VR: [
    { paramNameKey: 'params_1', precision: 0, min: 1, default: 26 },
    { paramNameKey: 'params_2', precision: 0, min: 1, default: 6 }
  ],
  WR: [
    { paramNameKey: 'WR1', precision: 0, min: 1, styleKey: 'lines[0].color' },
    { paramNameKey: 'WR2', precision: 0, min: 1, styleKey: 'lines[1].color' },
    { paramNameKey: 'WR3', precision: 0, min: 1, styleKey: 'lines[2].color' },
    { paramNameKey: 'WR4', precision: 0, min: 1, styleKey: 'lines[3].color' },
    { paramNameKey: 'WR5', precision: 0, min: 1, styleKey: 'lines[4].color' },
  ]
})

export const GetIndDefaults = (name: string): any[] | undefined => {
  switch (name) {
    case "MA": return [5, 10, 30];
    case "EMA": return [5, 10, 30];
    default: return undefined
  }
}